package com.zy.validated.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.*;

/**
 * validation进行校验的bean
 * @author 11473
 * @version 1.0
 * @date 2019/11/17 17:55
 */
@Data
@NoArgsConstructor                 //无参构造
@AllArgsConstructor                //有参构造
public class User {

    /**
     * id不能为空
     */
    @NotNull(message = "id不能为空")
    private Integer id;

    /**
     * 邮箱与正则表达式匹配
     * Pattern也就是最万能的校验注解了(因为正则表达式)
     */
    @Pattern(regexp = "^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\\.[a-zA-Z0-9_-]+)+$",message = "邮箱不符合格式")
    private String email;

    /**
     * 密码必须在 6 - 15 位之间
     */
    @Size(min = 6, max = 15,message = "密码必须在6到15位之间")
    private String password;

    /**
     * 年龄的值必须在 0 - 120 之间
     */
    @Min(value = 0,message = "年龄不能小于0岁")
    @Max(value = 120,message = "年龄不能超过120岁")
    private Integer age;

}
